package com.xiaoshuidi.cloud.module.report.dal.mapper.datamanage;

import com.xiaoshuidi.cloud.framework.mybatis.core.mapper.BaseMapperX;
import com.xiaoshuidi.cloud.module.report.controller.datamanage.vo.*;
import com.xiaoshuidi.cloud.module.report.dal.DO.ContractRoomDO;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.math.BigDecimal;
import java.util.List;

@Mapper
public interface FinancialAnalysisMapper extends BaseMapperX<ContractRoomDO> {


    /**
     * 逾期收款
     * @param vo
     * @return
     */
    List<OverdueScopeRespVO> accountsReceivableOverdue(@Param("vo") LeaseAnalysisReqVO vo);


    /**
     * 逾期付款
     * @param vo
     * @return
     */
    List<OverdueScopeRespVO> overduePayments(@Param("vo") LeaseAnalysisReqVO vo);


    /**
     *租金收入
     * @param vo
     * @return
     */
    List<RentalIncomeVO> rentalIncome(@Param("vo") LeaseAnalysisReqVO vo);

    /**
     *租金统计
     * @param vo
     * @return
     */
   BigDecimal rentalSum(@Param("vo") LeaseAnalysisReqVO vo);

    /**
     * 收缴率
     * @param vo
     * @return
     */
    List<CollectionRateVO> rentOrderRate(@Param("vo") LeaseAnalysisReqVO vo);


    /**
     *收缴率统计
     * @param vo
     * @return
     */
    BigDecimal rentOrderRateSum(@Param("vo") LeaseAnalysisReqVO vo);

    /**
     *累计已收统计
     * @param vo
     * @return
     */
    AccumulatedReceivedVO accumulatedReceivedSum(@Param("vo") LeaseAnalysisReqVO vo);

}
